Skip to content

Version 0.3.4: declared axes and one design reader (PRs #58, #59) - #60

Merged
guijacquemet merged 1 commit into
mainfrom
claude/release-v0.3.4
Oct 31, 2026
Merged

guijacquemet merged 1 commit into
mainfrom
claude/release-v0.3.4

Conversation

@guijacquemet

Copy link
Copy Markdown
Contributor

Release PR for v0.3.4. It sets pyproject.toml to 0.3.4, records what the release holds in AGENTS.md and plan question 41, and marks v0.3.3 as released. There is no code change.

v0.3.4 holds the core fixes from the owner's answers of 31 October 2026:

  • Declared axes: a plain stack's positional Y and X are open (v0.3.4) #58, declared axes (check_declared_axes):

    • Plain stacks declared YXC are accepted. A plain stack's positional Y and X (tifffile's QYX/IYX with no axis metadata) no longer count as named.
    • Y and X swapped are accepted, and the image is read transposed. A declaration that differs from the named axes only by swapping Y and X is accepted; declared_axes_transposed reports it to the caller.
    • Any other disagreement is still refused, and a plain stack must still declare Y and X.
    • New public names: named_axes, series_axes_from_metadata, TiffMetadata.axes_from_metadata, OPEN_AXIS.
  • Experiment design: one strict reader for other bricks (v0.3.4) #59, one strict reader of experiment_design.csv for MorphoFeature and CellPatcher: read_confirmed_design / ConfirmedDesign / DesignCheckError. Design edits are refused, in both readers, when:

    • repeat_group is empty or NA-like (an empty group no longer means the folder name);
    • two repeat groups differ only in case;
    • confirmed_on is not an ISO date (YYYY-MM-DD).

    Each refusal names the line and column. The writer and design_issues (invalid_experiment_design) refuse the same values.

Inputs that passed before may now be refused, as listed above. The normalization brick stays at v0.3.2.

Tests: ruff check and format are clean. 1460 passed, 1 skipped (tests/test_discovery.py:665: running as root, which ignores file modes). Run locally on Python 3.11 with zarr 3.

After this PR is merged, the owner publishes the tag v0.3.4 on the merge commit, and every brick then pins it (D79).


Generated by Claude Code

pyproject reports 0.3.4 before tagging; plan question 41 and AGENTS.md
record what v0.3.4 holds, and v0.3.3 is marked released.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WX6rdMV1r5jUPUR94kxV5a
@guijacquemet
guijacquemet merged commit 2d1517d into main Oct 31, 2026
7 checks passed
@guijacquemet
guijacquemet deleted the claude/release-v0.3.4 branch November 1, 2026 18:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants